Program vpraša za dve števili in za njun produkt, ter izpiše uporabnikove odgovore in pravi produkt. Vendar ne dela!
ime = input("Kako ti je ime? ")
print("Pozdravljen, ', ime, 'bi vadil poštevanko? ")
int(input("Pa dajva. Vpiši prvi faktor: "))
int(input("Pa še drugi faktor: "))
rezultat = a*b
c = input("Koliko, misliš, znaša produkt? ")
print("Napisal si, da je", a, "krat", b, "enako", c)
print("Pravilen odgovor je", rezulat)
Skopiraj ga, poskusi prevesti in popravi!
ime = input("Kako ti je ime? ") print("Pozdravljen,", ime, "bi vadil poštevanko? ") a = int(input("Pa dajva. Vpiši prvi faktor: ")) b = int(input("Pa še drugi faktor: ")) rezultat = a * b c = input("Koliko, misliš, znaša produkt? ") print("Napisal si, da je", a, "krat", b, "enako", c) print("Pravilen odgovor je", rezultat)
Ko sem bil jaz bruc (ja, v prazgodovini ;-) ) smo računalniške programe pisali na kartice. Na vsaki kartici je bil en stavek. In ni bilo tako redko, da si se spotaknil, razsul šop kartic in ... Potem je bilo potrebno zadevo ustrezno urediti. In sedaj imamo podoben problem. Virus je v naši datoteki premešal vrstice.
#preberemo podatke
print ('Program ti bo spremenil sekunde v dneve, ure, minute in sekunde')
print (sekZacasne,'sekund je natanko')
print (dnevi, 'dni,', ure, 'ur,', minute, 'minut in', sekunde,'sekund')
minZacasne = sekZacasne // 60 #celi del deljenja so vse minute
minute = minZacasne % 60 #ostanek od deljenja z 60 so minute ostalo že ure
sekunde = sekZacasne % 60 #ostanek od deljenja z 60 so sekunde
ure = ureZacasne % 24 #ostanek od deljenja z 24 so ure ostalo dnevi
ureZacasne = minZacasne // 60 #celi del od deljenja z 60 so vse ure
dnevi = ureZacasne // 24 #celi del deljenja z 24 so dnevi
sekZacasne = int(input('Vnesi sekunde: '))
#izpišemo rezultat
Uredi jih tako, da bo program smiselno deloval!
#preberemo podatke print ('Program ti bo spremenil sekunde v dneve, ure, minute in sekunde') sekZacasne = int(input('Vnesi sekunde: ')) sekunde = sekZacasne % 60 #ostanek od deljenja z 60 so sekunde minZacasne = sekZacasne // 60 #celi del deljenja so vse minute minute = minZacasne % 60 #ostanek od deljenja z 60 so minute ostalo že ure ureZacasne = minZacasne // 60 #celi del od deljenja z 60 so vse ure ure = ureZacasne % 24 #ostanek od deljenja z 24 so ure ostalo dnevi dnevi = ureZacasne // 24 #celi del deljenja z 24 so dnevi #izpišemo rezultat print (sekZacasne,'sekund je natanko') print (dnevi, 'dni,', ure, 'ur,', minute, 'minut in', sekunde,'sekund')
Hišnik mora vsak mesec očistiti bazen. Da ga lahko očisti, mora najprej iz njega izčrpati vodo. Ker je bolj lene sorte, pa bi med iztakanjem vode (ki traja kar nekaj časa) raje odšel v bližnjo kavarno na pogovor s prijateljem, namesto da bi stražil bazen. Tukaj je program, ki bo za bazen velikosti 2 m x 3m x 9m izračunal, koliko sekund se bo praznil bazen, če vsako sekundo izteče iz bazena 23l vode. Če ste že pozabili: kubični decimeter vode = 1l vode.
#Vnos dimenzij bazena.
globina = 2
širina = 3
dolžina = 9
# Pretvorba dimenzij bazena v dm.
dolžinaVdm = dolžina * 10
širinaVdm = širina * 10
globinaVdm = globina * 10
# Izračun prostornine bazena v kubičnih dm.
prostorninaVdm = dolžinaVdm * širinaVdm * globinaVdm
# Vnos pretoka vode v sekundi.
prostorninaIztekaV1sek = 23
# Izračun časa praznjenja bazena.
časPraznjenjaVsek = prostorninaVdm / prostorninaIztekaV1sek
# Izpis rezultata.
print('Bazen velikosti', dolžina, 'm ×', širina, 'm ×', globina, 'm', 'se bo praznil', časPraznjenjaVsek, 'sekund.')
Spremeni zgornji program tako, da boš dimenzije bazena in hitrost iztekanja prebral! Dimenzije so v celih metrih!
#Vnos dimenzij bazena. globina = int(input('Vnesi globino bazena ')) širina = int(input('Vnesi širino bazena ')) dolžina = int(input('Vnesi dolžino bazena ')) # Pretvorba dimenzij bazena v dm. dolžinaVdm = dolžina * 10 širinaVdm = širina * 10 globinaVdm = globina * 10 # Izračun prostornine bazena v kubičnih dm. prostorninaVdm = dolžinaVdm * širinaVdm * globinaVdm # Vnos pretoka vode v sekundi. prostorninaIztekaV1sek = int(input('Koliko l vode v sekundi izteče: ')) # Izračun časa praznjenja bazena. časPraznjenjaVsek = prostorninaVdm / prostorninaIztekaV1sek # Izpis rezultata. print('Bazen velikosti', dolžina, 'm ×', širina, 'm ×', globina, 'm', 'se bo praznil', časPraznjenjaVsek, 'sekund.')
Hišnik je zamenjal službo. A tudi tam imajo bazen in hišnik ga mora spet čistiti.
Že je ves vesel zagnal tvoj program, a kaj, ko je pri merjenju ugotovil, da
je globina bazena 2.34m.
Pomagaj mu in program popravi tako, da bo sedaj sprejel podatke v obliki decimalnih števil.
Potrudi se in rezultate izpiši lepo. Namig: oglej si, kaj počne float(12.45)
in print("%.2f" % 1.2399)
ali pa print("{:.2f}".format(3.1415926))
,
oziroma na spletu poišči "float Python 3"
in "format string Python 3"
#Vnos dimenzij bazena. globina = float(input('Vnesi globino bazena ')) širina = float(input('Vnesi širino bazena ')) dolžina = float(input('Vnesi dolžino bazena ')) # Pretvorba dimenzij bazena v dm. dolžinaVdm = dolžina * 10 širinaVdm = širina * 10 globinaVdm = globina * 10 # Izračun prostornine bazena v kubičnih dm. prostorninaVdm = dolžinaVdm * širinaVdm * globinaVdm # Vnos pretoka vode v sekundi. prostorninaIztekaV1sek = float(input('Koliko l vode v sekundi izteče: ')) # Izračun časa praznjenja bazena. časPraznjenjaVsek = prostorninaVdm / prostorninaIztekaV1sek # Izpis rezultata. print('Bazen velikosti', "{:.2f}".format(dolžina), 'm ×', "{:.2f}".format(širina), 'm ×', "{:.2f}".format(globina), 'm', 'se bo praznil', "{:.2f}".format(časPraznjenjaVsek), 'sekund.')
Hišnik je z našim programom sicer zelo zadovoljen, a zadnjič se je v pretvarjanju sekund
v minute uštel in je zato prišel nazaj h bazenu cele pol ure prezgodaj.
Zato prosi, če mu namesto časa v sekundah izpišeš čas v urah, minutah in sekundah.
Tukaj boste morali sekunde iz decimalne oblike pretvoriti v celo število. Ugotovi,
kako to storimo v Pythonu. Namig: https://docs.python.org/3/library/functions.html
#Vnos dimenzij bazena. globina = float(input('Vnesi globino bazena ')) širina = float(input('Vnesi širino bazena ')) dolžina = float(input('Vnesi dolžino bazena ')) # Pretvorba dimenzij bazena v dm. dolžinaVdm = dolžina * 10 širinaVdm = širina * 10 globinaVdm = globina * 10 # Izračun prostornine bazena v kubičnih dm. prostorninaVdm = dolžinaVdm * širinaVdm * globinaVdm # Vnos pretoka vode v sekundi. prostorninaIztekaV1sek = float(input('Koliko l vode v sekundi izteče: ')) # Izračun časa praznjenja bazena. časSek = round(prostorninaVdm / prostorninaIztekaV1sek) časMinut = časSek // 60 časSek = časSek % 60 časUr = časMinut // 60 časMinut = časMinut % 60 # Izpis rezultata. print('Bazen velikosti', "{:.2f}".format(dolžina), 'm ×', "{:.2f}".format(širina), 'm ×', "{:.2f}".format(globina), 'm', 'se bo praznil', časUr, "ur,", časMinut, "minut in", časSek, "sekund.")
Naslednji program naj bi seštel dva kota, podana v stopinjah, minutah in sekundah
print('Prvi kot\n=========')
stopinje1 = int(input('stopinje: '))
minute1 = int(input('minute: '))
sekunde1 = int(input('sekunde: '))
print('Drugi kot\n=========')
stopinje2 = int(input('stopinje: '))
minute2 = int(input('minute: '))
sekunde2 = int(input('sekunde: '))
stopinje = stopinje1 + stopinje2
minute = minute1 + minute2
sekunde = sekunde1 + sekunde2
minute = minute + sekunde // 60
minute = minute % 60
print('Vsota kotov je', stopinje, 'stopinj,', minute, 'minut in', sekunde, 'sekund.')
Žal ne dela pravilno. Popravi ga!
print('Prvi kot\n=========') stopinje1 = int(input('stopinje: ')) minute1 = int(input('minute: ')) sekunde1 = int(input('sekunde: ')) print('Drugi kot\n=========') stopinje2 = int(input('stopinje: ')) minute2 = int(input('minute: ')) sekunde2 = int(input('sekunde: ')) stopinje = stopinje1 + stopinje2 minute = minute1 + minute2 sekunde = sekunde1 + sekunde2 minute = minute + sekunde // 60 sekunde = sekunde % 60 stopinje = stopinje + minute // 60 minute = minute % 60 print('Vsota kotov je', stopinje, 'stopinj,', minute, 'minut in', sekunde, 'sekund.')
Spodaj je napisan program, ki kot v radianih (realno število) pretvori in izpiše v stopinjah in minutah (kot celi števili; za minute naj program ne uporabi zaokroženja ampak naj samo odreže decimalna mesta).
Primer: Za
kot = 2.185
naj program izpiše
2.185 radianov je 125 stopinj in 11 minut.
Žal ne deluje povsem pravilno. Popravi ga!
import math # Število π je shranjeno v math.pi
kot = input('Kot: ')
stopinje = kot * 360 / math.pi
minute = 60 * stopinje
stopinje = int(stopinje)
print('{:.6}'.format(kot), 'radianov je', stopinje, 'stopinj in', minute, 'minut
import math # Število π je shranjeno v math.pi kot = float(input('Vnesi kot: ')) stopinje = kot * 360 / (2 * math.pi) minute = int(60 * (stopinje - int(stopinje))) stopinje = int(stopinje) print('{:.6}'.format(kot), 'radianov je', stopinje, 'stopinj in', minute, 'minut.')
Program
ura = int(input('Ur: '))
minuta = int(input('Minut: '))
alfa = 60 * (3 * minuta) # Kot minutnega kazalca v kotnih minutah.
beta = 60 * (ura + minuta) # Kot urnega kazalca v kotnih minutah.
minute = abs(alfa - beta)
minute = min(minute, 360 * 60 - minute) # Vzamemo manjšega od obeh kotov.
minute = minute - int(minute) # Odrežemo decimalni del.
stopinje = minute // 60
print('Kot med urnim in minutnim kazalcem je', stopinje, 'stopinj in', minute, 'minut.')
naj bi izračunal manjšega izmed kotov med urnim in
minutnim kazalcem ob danem času. Čas je podan z uro in minutami.
Upoštevajte, da se vsako minuto tudi urni kazalec malo prestavi.
Trenutno uro in minuto imate podano v spremenljivkah z imenoma ura
in minuta
. Kot naj bo izpisan v obliki
Kot med urnim in minutnim kazalcem je x stopinj in y minut.
kjer sta x
in y
celi števili (minut ne zaokrožuj, ampak samo odreži
decimalni del).
Primer: za vrednosti
ura = 17
minuta = 47
naj program izpiše
Kot med urnim in minutnim kazalcem je 108 stopinj in 30 minut.
ura = int(input('Ur: ')) minuta = int(input('Minut: ')) ura = ura % 12 alfa = 60 * (6 * minuta) # Kot minutnega kazalca v kotnih minutah. beta = 60 * (30 * ura + 0.5 * minuta) # Kot urnega kazalca v kotnih minutah. minute = abs(alfa - beta) minute = min(minute, 360 * 60 - minute) # Vzamemo manjšega od obeh kotov. minute = int(minute) # Odrežemo decimalni del. stopinje = minute // 60 minute = minute % 60 print('Kot med urnim in minutnim kazalcem je', stopinje, 'stopinj in', minute, 'minut.')